package com.frame.common.db;


import java.util.List;

import org.springframework.dao.DataAccessException;

public interface BaseMapper<T> {
	
	T load() throws DataAccessException;
	
	T load(Object o) throws DataAccessException;
	
	int getInt() throws DataAccessException;
	
	int getInt(Object o) throws DataAccessException;
	
	List<T> find() throws DataAccessException;
	
	List<T> find(Object o) throws DataAccessException;
	
	Object save() throws DataAccessException;
	
	Object save(Object o) throws DataAccessException;	
	
//	/**
//	 * 根据主键查询对应的对象
//	 * @param primaryKey 对象的主键
//	 * @return 查询后的对象
//	 * @throws DataAccessException DataAccessException
//	 */
//	T findById(Object id) throws DataAccessException;
//		
//	/**
//	 * 根据对象主键删除对应的对象
//	 * @param primaryKey 对象的
//	 */
//	void deleteById(Object id) throws DataAccessException;
//	
//	/**
//	 * 查询所有对象的长度
//	 * @return 数据的长度
//	 * @throws DataAccessException DataAccessException
//	 */
//	int findAllObjLength() throws DataAccessException;
	
//	/**
//	 * 分页查询对象
//	 * @param page Page对象
//	 * @return 返回查询出的数据
//	 * @throws DataAccessException DataAccessException
//	 */
//	List<T> findByPage(Page<T> page) throws DataAccessException;
//	
//	/**
//	 * 保存对象到数据库表中
//	 * @param t 要保存的对象
//	 * @throws DataAccessException DataAccessException
//	 */
//	void addObj(T t) throws DataAccessException;
//	
//	/**
//	 * 根据对象的字段进行查询
//	 * @param paramName 要查询的字段
//	 * @param value 该字段对应的值
//	 * @return 查询到的数据
//	 * @throws DataAccessException DataAccessException
//	 */
//	List<T> findByParam(String paramName, Object value) throws DataAccessException;
}
